Movement guidance device and computer program

ABSTRACT

Movement guidance devices and programs provide movement guidance for a mobile unit using guidance information for providing movement guidance for the mobile unit. The guidance information is delivered from a server device. The devices and programs store the guidance information delivered from the server device in a memory. The stored guidance information is area-section-by-area-section guidance information. The devices and programs set a remaining priority for the stored guidance information on a per area section basis of map information and delete, from the memory, guidance information for an area section with a low remaining priority on a priority basis rather than guidance information for an area section with a high remaining priority among the stored guidance information.

TECHNICAL FIELD

Related technical fields include movement guidance devices and computerprograms that provide movement guidance for a mobile unit.

BACKGROUND

In recent years, a navigation device that provides vehicle travelguidance so that a driver can easily reach a desired destination hasbeen often mounted on vehicles. Here, the navigation device is a devicethat allows to detect a current location of the vehicle by a GPSreceiver, etc., obtain map information for the current location througha recording medium such as a DVD-ROM or an HDD or a network, and displaythe map information on a liquid crystal monitor. In addition, theabove-described navigation device has a route search function thatsearches for, when a desired destination is set, an optimal route from apoint of departure (e.g., the current vehicle location) to the setdestination, and further has a travel guidance function that providestravel guidance according to the searched route (guided route). Inaddition, in recent years, there have also been mobile phones, personaldigital assistants (PDAs), smartphones, personal computers, etc., thathave the same functions as those of the above-described navigationdevice (hereinafter, referred to as communication terminals including anavigation device).

Here, new roads (newly constructed roads) are constructed all over Japanevery year. In addition, along with this, existing roads disappear,intersections are added, or the shapes of existing roads orintersections are changed. At that time, there is a problem thatinformation about newly constructed roads, etc., that are newlyconstructed after the creation of map information included in acommunication terminal is not registered in the map information. Namely,in the communication terminal having map information that does notinclude newly constructed roads, etc., the newly constructed roads,etc., do not serve as targets for a route search or guidance, and thus,appropriate travel guidance may not be provided, e.g., a roundaboutguided route that does not pass through a newly constructed road, etc.,is searched for, or roads or intersections that actually exist are notguided on a map image.

Hence, in recent years, there has been proposed a configuration in whicha server device having the latest map information performs a routesearch instead of the communication terminal side, and a guided route isobtained from the server device (hereinafter, referred to as centerroute search). However, when a center route search is performed, while aroute can be searched for based on the latest map information, a problemoccurs in which the communication terminal side having an old version ofmap information cannot appropriately provide travel guidance along aguided route. For example, when a guided intersection at which a left orright turn is to be made in a guided route is a newly constructedintersection, left or right turn guidance at the guided intersection isnot provided. In addition, in the case of an intersection whosestructure has been changed, guidance in the wrong direction is providedbased on old map information.

As means for avoiding the above-described problems upon performing acenter route search, for example, JP 2003-77095 A proposes a techniquein which, when a server device receives a route search request from anavigation device, while the server device searches for a route, theserver device transmits the mesh codes of meshes through which thesearched route passes and version information, together with thesearched route, to the navigation device, and the navigation devicedetermines, based on the mesh codes and version information transmittedfrom the server device, whether the version of corresponding mesh data(map information) is older than that of mesh data stored in the serverdevice, and requests the server device for the latest version of meshdata targeted for meshes that have been determined to be old.

SUMMARY

Here, in the technique of the above-described JP 2003-77095 A, mesh dataobtained from the server device is sequentially accumulated in a storagemedium (cache) of the navigation device. When a user travels in the samearea next time, mesh data accumulated in the cache is used withoutobtaining the same mesh data from the server device, by which the amountof communication is reduced. However, when a vehicle travels in a newarea, there is a need to obtain mesh data for the new area from theserver device and store the mesh data in the storage medium of thenavigation device.

Therefore, the amount of mesh data to be stored in the storage mediumgradually increases every time the vehicle travels. Since there is anupper limit on a storage area in which mesh data is saved, while newmesh data is obtained, unnecessary mesh data needs to be deleted. Hence,the above-described JP 2003-77095 A suggests that, when the amount offree space in the cache gets small, old mesh data and mesh data with lowfrequency of use are deleted from the cache.

However, mesh data that is required in the future for movement guidanceon the navigation device cannot always be identified by how old data isand the frequency of use of data. If mesh data that is required in thefuture for movement guidance on the navigation device is deleted, thenthe navigation device needs to obtain the same mesh data again from theserver device, increasing communication load and processing load.

Exemplary embodiments of the broad inventive principles described hereinsolve the above-described conventional problems, and provides a movementguidance device and a computer program that allow guidance informationrequired in the future for movement guidance to remain on a prioritybasis, by setting, when guidance information required to providemovement guidance for a mobile unit is obtained from a server device andstored in a storage medium, remaining priorities for the guidanceinformation stored in the storage medium, on a per area section basis.

Exemplary embodiments provide movement guidance devices and programsthat provide movement guidance for a mobile unit using guidanceinformation for providing movement guidance for the mobile unit. Theguidance information is delivered from a server device. The devices andprograms store the guidance information delivered from the server devicein a memory. The stored guidance information isarea-section-by-area-section guidance information. The devices andprograms set a remaining priority for the stored guidance information ona per area section basis of map information and delete, from the memory,guidance information for an area section with a low remaining priorityon a priority basis rather than guidance information for an area sectionwith a high remaining priority among the stored guidance information.

Note that the “mobile unit” includes a pedestrian and a two-wheeledvehicle in addition to a vehicle.

According to exemplary embodiments, when guidance information requiredto provide movement guidance for a mobile unit is obtained from a serverdevice and stored in a storage medium, remaining priorities are set forthe guidance information stored in the storage medium, on a per areasection basis, by which it becomes possible to allow guidanceinformation required in the future for movement guidance to remain on apriority basis. As a result, the chance of obtaining the same guidanceinformation having been obtained in the past again from the serverdevice is reduced, enabling to reduce communication load and processingload.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a schematic configuration diagram showing a movement guidancesystem according to the present embodiment.

FIG. 2 is a block diagram showing a configuration of the movementguidance system according to the present embodiment.

FIG. 3 is a block diagram schematically showing a control system of acommunication terminal according to the present embodiment.

FIG. 4 is a diagram showing an example of an update area table.

FIG. 5 is a diagram showing an example of movement guidance informationstored in a cache.

FIG. 6 is a flowchart for a movement guidance processing programaccording to the present embodiment.

FIG. 7 is a flowchart for the movement guidance processing programaccording to the present embodiment.

FIG. 8 is a diagram showing an example of table update information.

FIG. 9 is a diagram showing an exemplary update to the update areatable.

FIG. 10 is a diagram showing areas for which movement guidanceinformation is requested.

FIG. 11 is a diagram showing areas for which movement guidanceinformation is requested.

FIG. 12 is a flowchart for a sub-process program for a cache managementprocess.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

An embodiment in which a movement guidance device and a computer programare embodied will be described in detail below with reference to thedrawings. First, a schematic configuration of a movement guidance system1 according to the present embodiment will be described using FIGS. 1and 2. FIG. 1 is a schematic configuration diagram showing the movementguidance system 1 according to the present embodiment. FIG. 2 is a blockdiagram showing a configuration of the movement guidance system 1according to the present embodiment.

As shown in FIG. 1, the movement guidance system 1 according to thepresent embodiment basically includes a server device 3 provided in amap information center 2; and communication terminals 5 which aremovement guidance devices and carried by users 4. In addition, theserver device 3 and the communication terminals 5 are configured to beable to perform transmission and reception of electronic data with eachother through a communication network 6. Note that the communicationterminals 5 include, for example, mobile phones, smartphones, tabletterminals, personal computers, and navigation devices. In addition, theusers 4 may be in a state of getting in a vehicle or may be in a stateof not getting in a vehicle.

Here, the server device 3 performs a route search according to a requestfrom a communication terminal 5. Specifically, when a communicationterminal 5 has set a destination or performs a re-search for a route(rerouting), the communication terminal 5 transmits information requiredfor a route search such as a point of departure and a destination,together with a route search request, to the server device 3 (note,however, that in the case of a re-search, information about adestination does not necessarily need to be transmitted). Then, theserver device 3 having received the route search request performs aroute search using map information included in the server device 3, andidentifies a recommended route from the point of departure to thedestination. Thereafter, the identified recommended route is transmittedto the communication terminal 5 which is the request source. Then, thecommunication terminal 5 sets the received recommended route as a guidedroute and provides movement guidance according to the guided route. Bythis, even if map information included in the communication terminal 5at the time of a route search is an old version of map information, anappropriate guided route can be set based on the latest version of mapinformation included in the server device 3.

In addition to the delivery of the above-described searched route, theserver device 3 also delivers movement guidance information forproviding movement guidance for a user on the communication terminal 5,according to a request from the communication terminal 5. Note that themovement guidance information is information created based on the latestversion of map information and used to identify a current location,provide simple travel guidance along a guided route, and display animage on the communication terminal 5 according to the latest version ofmap information as will be described later. Then, by the communicationterminal 5 using the movement guidance information delivered from theserver device 3, even if map information included in the communicationterminal 5 is an old version of map information, the communicationterminal 5 can provide movement guidance along a guided route that issearched for by the server device 3 based on the latest version of mapinformation.

Meanwhile, the communication terminal 5 is carried by a user 4, and forthe communication terminal 5 an information terminal having navigationfunctions is used. The communication terminal 5 corresponds, forexample, to a mobile phone, a smartphone, a tablet terminal, a personalcomputer, or a navigation device.

Here, the navigation functions correspond to the functions of searchingfor a route appropriate to conditions specified by the user, displayinga map image around a current location of the user 4, displaying thecurrent location of the user 4 in the displayed map image, and providingmovement guidance along a set guided route. Note that the communicationterminal 5 does not need to have all of the above-described navigationfunctions as long as the communication terminal 5 has at least thefunction of searching for a route and the function of providing movementguidance along a set guided route.

In addition, the communication network 6 includes a large number of basestations disposed all over the country and telecommunications companiesthat manage and control the base stations, and is formed by connectingthe base stations to the telecommunications companies by wire (opticalfiber, ISDN, etc.) or wirelessly. Here, each base station includes atransceiver and an antenna that perform communication with communicationterminals 5. While the base station performs wireless communication witha telecommunications company, the base station serves as an end of thecommunication network 6 and plays a role in relaying communication ofcommunication terminals 5 present in an area (cell) in which radio wavesfrom the base station reach, with the server device 3.

Next, a configuration of the server device 3 in the movement guidancesystem 1 will be described in more detail using FIG. 2. The serverdevice 3 includes, as shown in FIG. 2, a server control ECU 11; adevice-side map DB 12 serving as information storage medium andconnected to the server control ECU 11; and a server-side communicationdevice 13. (As used herein, the term “storage medium” is not intended toencompass transitory signals.)

The server control ECU 11 (electronic control unit) is an electroniccontrol unit that performs overall control of the server device 3, andincludes a CPU 21 serving as a computing device and a control device;and internal storage mediums such as a RAM 22 that is used as a workingmemory when the CPU 21 performs various types of arithmetic processing,a ROM 23 having recorded therein a movement guidance processing programwhich will be described later (see FIGS. 6 and 7), etc., in addition toa program for control, and a flash memory 24 that stores a program readfrom the ROM 23.

In addition, the device-side map DB 12 is storage medium for storingdevice-side map information 25 such that the device-side map information25 is divided into areas (e.g., level-10 meshes of 20 km square), thedevice-side map information 25 being the latest version of mapinformation which is registered based on input data and input operationsfrom an external source. Here, the version is creation time informationfor identifying a time when map information is created, a time when thelast update is made, or a time when map update information (updateprogram) used when the last update is made is created. By referring tothe version, the time when map information is created, etc., can beidentified.

Here, the device-side map information 25 basically has the sameconfiguration as map information stored in the communication terminal 5,and includes a road network and various types of information requiredfor a route search, route guidance, and map display. The device-side mapinformation 25 includes, for example, link data about roads (links),node data about node points, intersection data about each intersection,location data about locations such as facilities, map display data fordisplaying a map, search data for searching for a route, and retrievaldata for retrieving a location.

For the search data, various types of data are recorded that are usedfor a route search process for searching for a route from a point ofdeparture (e.g., a current vehicle location) to a set destination aswill be described later. For example, cost calculation data is storedthat is used to calculate search costs such as a cost obtained byconverting an appropriate level of an intersection for a route into anumber (hereinafter, referred to as intersection cost) and a costobtained by converting an appropriate level of a link forming a road fora route into a number (hereinafter, referred to as link cost).

In addition, the device-side map DB 12 also stores, separately from thedevice-side map information 25, movement guidance information 26 suchthat the movement guidance information 26 is divided into areas (e.g.,level-13 meshes of 2.5 km square), the movement guidance information 26being information for identifying a current location and providingsimple travel guidance along a guided route on the communicationterminals 5 according to the latest version of map information.

Here, the movement guidance information 26 includes matching datarequired to perform map matching for a current user location; guidancedata required for guidance for allowing a user to move along a guidedroute, such as left or right turn guidance at guided intersections; anddisplay data for displaying a map image and a guidance screen. Note thatthe matching data includes, for example, data for identifying roadshapes. In addition, the guidance data includes, for example, data foridentifying the shapes of intersections and a connection relationshipbetween intersections and roads. In addition, the display data includesdata for displaying, on a display of the communication terminal 5, a mapimage including a road network and a guidance screen for providingmovement guidance.

Then, when the server control ECU 11 receives a route search requestfrom a communication terminal 5 as will be described later, the servercontrol ECU 11 performs a route search from a point of departure to adestination, using the device-side map information 25. Then, the servercontrol ECU 11 delivers the searched route to the requestedcommunication terminal 5. In addition, the server control ECU 11 alsodelivers movement guidance information 26 to the communication terminal5 as necessary. Specifically, the server control ECU 11 is configured todeliver movement guidance information 26 for target areas to thecommunication terminal 5, the target areas being areas in which thecommunication terminal 5 is likely to move in the future (e.g., areasaround a current location of the communication terminal 5 and/or areasaround a guided route set on the communication terminal 5) and beingareas whose map information included in the communication terminal 5 isan older version than device-side map information 25, i.e., areas thatrequire movement guidance information 26 for the future movementguidance on the communication terminal 5.

Meanwhile, the server-side communication device 13 is a communicationdevice for performing communication with the communication terminals 5through the communication network 6. In addition to the communicationterminals 5, it is also possible to receive traffic informationincluding various information such as congestion information, regulationinformation, and traffic accident information which are transmitted froman Internet network or a traffic information center, e.g., a VICS(registered trademark: Vehicle Information and Communication System)center or a probe center.

Next, a schematic configuration of the communication terminal 5 will bedescribed using FIG. 3. Note that in the following description anexample case will be described in which a navigation device installed ina vehicle is used as the communication terminal 5, and travel guidancefor particularly a vehicle as a mobile unit is provided. Note, however,that instead of a navigation device, a mobile phone, a tablet terminal,a personal computer, etc., may be used. In addition, when a mobile phoneor a tablet terminal is used, it is also possible to provide movementguidance for a mobile unit other than a vehicle (e.g., a pedestrian or abicycle). FIG. 3 is a block diagram schematically showing a controlsystem of a navigation device which is the communication terminal 5according to the present embodiment.

As shown in FIG. 3, the communication terminal 5 according to thepresent embodiment includes a current location detecting unit 31 thatdetects a current location of a vehicle (mobile unit) having mountedthereon a navigation device which is the communication terminal 5; adata recording unit 32 having various types of data recorded therein; anavigation ECU 33 that performs various types of arithmetic processingbased on inputted information; an operating unit 34 that acceptsoperations from a user; a liquid crystal display 35 that displays a mapand a guided route to a destination for the user; a speaker 36 thatoutputs audio guidance regarding route guidance; a DVD drive 37 thatreads a DVD which is a storage medium; and a communication module 38that performs communication with the server device 3, a VICS center,etc.

The components forming the communication terminal 5 will be described inturn below.

The current location detecting unit 31 includes a GPS 41, a vehiclespeed sensor 42, a steering sensor 43, a gyro sensor 44, etc., and candetect a current vehicle location, orientation, vehicle travel speed,current time, etc. Here, particularly, the vehicle speed sensor 42 is asensor for detecting the movement distance and vehicle speed of thevehicle, and generates pulses according to the rotation of drive wheelsof the vehicle and outputs a pulse signal to the navigation ECU 33.Then, the navigation ECU 33 calculates the rotational speed and movementdistance of the drive wheels by counting the generated pulses. Note thatthe communication terminal 5 does not need to include all of theabove-described four types of sensors, and the communication terminal 5may be configured to include only one or a plurality of types of sensorsamong those sensors.

In addition, the data recording unit 32 includes a hard disk (not shown)serving as an external storage device and a recording medium; and arecording head (not shown) that is a driver for reading a terminal-sidemap DB 45, a version management DB 46, a cache 47, a predeterminedprogram, and the like, which are recorded on the hard disk, and writingpredetermined data to the hard disk. Note that the data recording unit32 may be composed of a nonvolatile memory, a memory card, or an opticaldisc such as a CD or a DVD, instead of a hard disk.

Here, the terminal-side map DB 45 is storage means for storingterminal-side map information 48 used for a route search or travelguidance on the communication terminal 5.

Here, the terminal-side map information 48 stored in the terminal-sidemap DB 45 includes, as with the above-described device-side mapinformation 25, a road network and various types of information requiredfor a route search, route guidance, and map display. The terminal-sidemap information 48 includes, for example, link data about roads (links),node data about node points, intersection data about each intersection,location data about locations such as facilities, map display data fordisplaying a map, search data for searching for a route, and retrievaldata for retrieving a location.

In addition, the terminal-side map information 48 stored in theterminal-side map DB 45 is updated to a new version of map informationon a section-by-section basis (e.g., on a mesh-by-mesh basis) by writingnew data over data for a corresponding portion based on map updateinformation delivered from a map delivery server which is not shown ormap update information obtained from a recording medium. In addition, itis also possible to make an update to the entire map information insteadof on a section-by-section basis. In addition, the terminal-side map DB45 also stores movement guidance information 26 for identifying acurrent location, providing travel guidance along a guided route, anddisplaying an image on the communication terminals 5 according to mapinformation, such that the movement guidance information 26 is dividedinto areas (e.g., level-13 meshes of 2.5 km square).

In addition, the version management DB 46 is storage means for recordinginformation that identifies the version of terminal-side map information48 currently stored in the terminal-side map DB 45 (e.g., a versionnumber, the last updated date, or the creation date of map updateinformation (update program) having made the last update), on asection-by-section basis (e.g., on a mesh-by-mesh basis) of mapinformation. Note that with an update of terminal-side map information48 to a new version of map information, corresponding content of theversion management DB 46 is updated.

In addition, the version management DB 46 stores an update area table(area identification information) 49 as information that identifies anarea (hereinafter, referred to as update target area) whoseterminal-side map information 48 included in the communication terminal5 is an older version of map information relative to device-side mapinformation 25 included in the server device 3. Here, the update areatable 49 is a table in which flags that identify a section correspondingto an update target area and a section not corresponding to an updatetarget area are assigned on a section-by-section basis (e.g., on amesh-by-mesh basis) of map information. FIG. 4 shows an example of theupdate area table 49.

FIG. 4 shows a state in which a road is newly constructed and of themeshes forming the device-side map information 25 included in the serverdevice 3, a total of six meshes which are corresponding areas areupdated from the previous version “50” to the new version “60.” In thissituation, the terminal-side map information 48 included in thecommunication terminal 5 is before update at the present time, andterminal-side map information 48 for the meshes having been updated tothe version “60” in the device-side map information 25 still have theversion “50.” Namely, there are update target areas whose terminal-sidemap information 48 included in the communication terminal 5 is an olderversion of map information relative to the device-side map information25 included in the server device 3. As shown in FIG. 4, in the updatearea table 49, flags that identify a section corresponding to an updatetarget area and a section not corresponding to an update target area areassigned on a mesh-by-mesh basis. Specifically, “0” is assigned to amesh corresponding to an update target area, and “1” is assigned to amesh not corresponding to an update target area. Note that although theexample shown in FIG. 4 shows the update area table 49 targeted for 5×5meshes for simplification of description, the actual update area table49 is a table in which flags are assigned to each mesh forming all areasof the country (when a mesh has a plurality of levels, flags areassigned on an area-by-area basis and on a level-by-level basis).

As a result, by referring to the update area table 49, the navigationECU 33 can easily identify update target areas (i.e., areas whoseterminal-side map information 48 included in the communication terminal5 is an older version of map information relative to device-side mapinformation 25 included in the server device 3). Note that the updatearea table 49 is updated as appropriate based on update informationwhich is transmitted from the server device 3, as will be describedlater. For example, when device-side map information 25 or terminal-sidemap information 48 is updated to a new version of map information, theupdate area table 49 is also updated accordingly. Note that for acriterion for area sections for the update area table 49, a commoncriterion for the server device 3 and the communication terminal 5 isused.

Meanwhile, the cache 47 is storage means for temporarily saving movementguidance information 26 which is delivered from the server device 3. Inthe movement guidance system 1 according to the present embodiment, asdescribed previously, movement guidance information 26 for target areasis delivered from the server device 3 and stored in the cache 47, thetarget areas being areas in which the vehicle is likely to travel in thefuture (e.g., areas around a current vehicle location and/or areasaround a guided route set on the communication terminal 5) and beingareas whose terminal-side map information 48 included in thecommunication terminal 5 is an older version than device-side mapinformation 25, i.e., areas that require movement guidance information26 for the future vehicle movement guidance. Here, the movement guidanceinformation 26 is, as described previously, information for identifyinga current location, providing simple travel guidance along a guidedroute, and displaying an image on the communication terminal 5 accordingto the latest map information.

Then, for the areas whose terminal-side map information 48 included inthe communication terminal 5 is an older version than device-side mapinformation 25, the navigation ECU 33 performs identification of acurrent vehicle location, travel guidance along a guided route, displayof an image, etc., using a new version of movement guidance information26 stored in the cache 47, instead of an old version of map informationor movement guidance information stored in the terminal-side map DB 45.

In addition, the movement guidance information 26 stored in the cache 47is set with remaining priorities on a section-by-section basis (e.g., ona mesh-by-mesh basis) of map information. When the cache 47 is lack ofits storage area, of the pieces of movement guidance information 26stored in the cache 47, pieces of movement guidance information 26 forarea sections with a low remaining priority are deleted on a prioritybasis. Note that movement guidance information 26 for area sections thatrequire movement guidance information for the future vehicle movementguidance as will be described later, more specifically, area sectionslocated around a current vehicle location and/or area sections locatedaround a guided route set on the communication terminal 5, is set with ahigher remaining priority than movement guidance information 26 forother area sections. FIG. 5 is a diagram showing an example of themovement guidance information 26 stored in the cache 47.

As shown in FIG. 5, in the cache 47, movement guidance information 26 isstored so as to be divided on a mesh-by-mesh basis which is asection-by-section basis of map information, and is set with remainingpriorities. Note that in the present embodiment the remaining priorityis set to either “A (high)” or “B (low).” Therefore, in the exampleshown in FIG. 5, since movement guidance information 26 for a mesh E anda mesh H has a lower remaining priority than movement guidanceinformation 26 for a mesh A and a mesh B, the mesh E and the mesh H aredeleted from the cache 47 on a priority basis. Note that in the presentembodiment the remaining priority is set to two levels but may be set tomore detailed levels. Note also that the remaining priorities may bestored so as to be associated with meshes (area sections) instead ofmovement guidance information 26.

Meanwhile, the navigation ECU (electronic control unit) 33 is anelectronic control unit that performs overall control of thecommunication terminal 5, and includes a CPU 51 serving as a computingdevice and a control device; and internal storage devices such as a RAM52 that is used as a working memory when the CPU 51 performs varioustypes of arithmetic processing and that stores route data obtained whena route is searched for, etc., a ROM 53 having recorded therein amovement guidance processing program which will be described later (seeFIGS. 6 and 7), etc., in addition to a program for control, and a flashmemory 54 that stores a program read from the ROM 53. Note that thenavigation ECU 33 includes various types of means serving as processingalgorithms with the ECU of the server device 3. For example, guidingmeans provides vehicle travel guidance using movement guidanceinformation 26 for providing vehicle travel guidance which is deliveredfrom the server device 3. Information storing means stores thearea-section-by-area-section movement guidance information 26 deliveredfrom the server device 3 in the cache 47. Priority setting means setsremaining priorities for the movement guidance information 26 stored inthe cache 47, on a per area section basis of map information.Information deleting means deletes, from the cache 47, movement guidanceinformation 26 for area sections with a low remaining priority on apriority basis rather than movement guidance information 26 for areasections with a high remaining priority among the movement guidanceinformation 26 stored in the cache 47.

The operating unit 34 is operated when, for example, a point ofdeparture which is a travel start point and a destination which is atravel end point are inputted, and includes a plurality of operatingswitches such as various types of keys and buttons (not shown). Then,based on switch signals outputted by, for example, depression of variousswitches, the navigation ECU 33 performs control to performcorresponding various types of operation. Note that the operating unit34 may include a touch panel provided on the front of the liquid crystaldisplay 35. Note also that the operating unit 34 may include amicrophone and an audio recognition device.

In addition, on the liquid crystal display 35 there are displayed a mapimage including roads, traffic information, operation guidance, anoperation menu, guidance on keys, a guided route from a point ofdeparture to a destination, guidance information according to the guidedroute, news, a weather forecast, time, an e-mail, a TV program, etc.Note that an HUD or an HMD may be used instead of the liquid crystaldisplay 35.

In addition, the speaker 36 outputs audio guidance that providesguidance on travel along a guided route or guidance on trafficinformation, based on an instruction from the navigation ECU 33.

In addition, the DVD drive 37 is a drive that can read data recorded ona recording medium such as a DVD or a CD. Then, based on the read data,for example, music or video is played back or the terminal-side map DB45 is updated. Note that a card slot for performing reading and writingon a memory card may be provided instead of the DVD drive 37.

In addition, the communication module 38 is a communication device forreceiving, for example, various information such as map updateinformation, route information, movement guidance information, andtraffic information which are transmitted from the server device 3, aVICS (registered trademark) center, a probe center, etc. Thecommunication module 38 corresponds, for example, to a mobile phone or aDCM.

Next, a movement guidance processing program executed by the serverdevice 3 and the communication terminal 5 in the movement guidancesystem 1 having the above-described configuration will be describedbased on FIGS. 6 and 7. FIGS. 6 and 7 are flowcharts for the movementguidance processing program according to the present embodiment. Here,the movement guidance processing program is a program that is executedafter a vehicle's accessory (ACC) power supply is turned on and thatsearches for a route from a point of departure to a destination andprovides travel guidance along a guided route. Note, however, that whenthe communication terminal 5 is other than a navigation device, theprogram is executed after the power to a main body of the communicationterminal 5, instead of the ACC power supply, is turned on (afteractivation). Note that the following program shown in the flowcharts ofFIGS. 6, 7, and 12 is stored in the RAM or ROM included in the serverdevice 3 and the communication terminal 5, and executed by the CPU 21 orthe CPU 51.

First, the movement guidance processing program executed by the CPU 51of the communication terminal 5 will be described based on FIG. 6. Atstep (hereinafter, abbreviated as S) 1, the CPU 51 transmits a requestfor update information (hereinafter, referred to as table updateinformation) for updating the update area table 49 included in thecommunication terminal 5 (hereinafter, referred to as table updaterequest) to the server device 3. As described previously, the updatearea table 49 is a table in which flags that identify a sectioncorresponding to an update target area and a section not correspondingto an update target area are assigned on a section-by-section basis(e.g., on a mesh-by-mesh basis) of map information (FIG. 4).

In addition, the table update request transmitted at the above-described51 includes a terminal ID that identifies the communication terminal 5which is the source of the request for table update information; andinformation that identifies the version of the terminal-side mapinformation 48 at the present time on a section-by-section basis of mapinformation. Note that for the information that identifies the versionof the terminal-side map information 48, specifically, information istransmitted that identifies the creation time of map update information(update program) having made the last update to the terminal-side mapinformation 48 (the creation time also corresponds to the time whencurrent map information is created). Note that a version number or anupdated date on which the last update is made may be transmitted. Notealso that the information that identifies the version of theterminal-side map information 48 at the present time is stored in theversion management DB 46.

Then, at S2, the CPU 51 receives table update information transmittedfrom the server device 3 according to the table update request. Here,the table update information received at the above-described S2 isinformation that is created by the server device 3 by comparing theversion of the terminal-side map information 48 at the present time withthe version of the device-side map information 25 (S32), and thatupdates a section whose device-side map information 25 has been updatedusing map update information which is created after the creation time ofmap update information (update program) having made the last update tothe terminal-side map information 48 (i.e., a section whose device-sidemap information 25 has a newer creation time than terminal-side mapinformation 48), to an update target area. Note that when thecommunication terminal 5 transmits a version number together with atable update request to the server device 3, table update informationcan be created by comparing version numbers, but a possible case inwhich the version number is downgraded to an old version needs to beconsidered. FIG. 8 is a diagram showing an example of the table updateinformation.

For example, when, as shown in FIG. 8, the versions of pieces ofterminal-side map information 48 included in the communication terminal5 are all “50,” and of the meshes forming the device-side mapinformation 25 included in the server device 3, a total of six mesheshave the version “60” that have been updated using map updateinformation created at a time newer than the version “50,” table updateinformation is created that updates corresponding six meshes in theupdate area table 49 to update target areas. As described previously, inthe update area table 49, the flag “0” is assigned to a meshcorresponding to an update target area and the flag “1” is assigned to amesh not corresponding to an update target area (FIG. 4). Therefore, thetable update information is data that overwrites the flags assigned tothe corresponding six meshes to “0.”

Subsequently, at S3, the CPU 51 updates the update area table 49 basedon the table update information received from the server device 3 at theabove-described S2. Specifically, as shown in FIG. 9, by combining theupdate area table 49 with the table update information, of the flagsincluded in the update area table 49, flags assigned to meshes specifiedby the table update information (in the example shown in FIG. 9, a totalof six meshes) are overwritten to “0.” Note that of the meshes specifiedby the table update information, meshes whose flags are already “0”maintain the “0” state.

Then, as a result of updating the update area table 49 at theabove-described S3, it becomes possible to accurately reflect areas(i.e., update target areas) whose terminal-side map information 48included in the communication terminal 5 is an older version of mapinformation relative to device-side map information 25 included in theserver device 3 at the present time (after activating the communicationterminal 5 and before requesting the server device 3 for movementguidance information), in the update area table 49. Therefore, forexample, when device-side map information 25 or terminal-side mapinformation 48 is updated to a new version of map information, theupdate area table 49 is also updated accordingly.

Then, at S4, the CPU 51 set a destination of a route on thecommunication terminal 5. Note that the destination is basically setbased on a user's operation accepted by the operating unit 34 (e.g., anoperation of reading a registered location or an operation of retrievingor selecting a facility). Note, however, that in the case of re-search(rerouting), a destination currently set on the communication terminal 5is continuously set without newly setting a destination.

Subsequently, at S5, the CPU 51 identifies a current vehicle locationbased on a detection result obtained by the current location detectingunit 31 and map information. Note that when a current vehicle locationis identified, a map matching process for matching the current vehiclelocation to map information is performed. The current vehicle locationis basically identified based on the terminal-side map information 48included in the communication terminal 5, but in a case in which theversion of terminal-side map information 48 for an area in which thevehicle is currently located is older than that of device-side mapinformation 25 (i.e., the case of an update target area), the currentvehicle location is identified using movement guidance information 26stored in the cache 47 instead of an old version of map information ormovement guidance information stored in the terminal-side map DB 45.Note, however, that when the cache 47 does not have movement guidanceinformation 26 for the corresponding area, the current vehicle locationis identified using an old version of map information or movementguidance information stored in the terminal-side map DB 45.

Thereafter, at S6, the CPU 51 identifies “update target areas around thecurrent vehicle location,” based on the update area table 49 and thecurrent vehicle location identified at the above-described S5.Specifically, the CPU 51 first identifies a total of nine (3×3) mesheswith a mesh in which the vehicle is currently located being at thecenter, as meshes around the current vehicle location. For example, inan example shown in FIG. 10, the mesh in which the vehicle is currentlylocated is a “mesh Q,” and thus, the meshes around the current vehiclelocation are meshes K, L, M, P, Q, R, U, V, and W with the mesh Q beingat the center. Thereafter, it is determined, by referring to the updatearea table 49, whether the meshes K, L, M, P, Q, R, U, V, and Wcorrespond to update target areas, and meshes determined to correspondto update target areas, i.e., meshes assigned the flag “0” in the updatearea table 49, are identified as “update target areas around the currentvehicle location.” Note that the “update target areas around the currentvehicle location” identified at the above-described S6 correspond toarea sections that require movement guidance information 26 for thefuture vehicle movement guidance.

Subsequently, at S7, the CPU 51 transmits a request for movementguidance information 26 targeted for the “update target areas around thecurrent vehicle location” identified at the above-described S6, to theserver device 3. Note, however, that an area for which identicalmovement guidance information 26 is already stored in the cache 47 ofthe communication terminal 5 is excluded from request targets. Here, themovement guidance information 26 is, as described previously,information for identifying a current location, providing simple travelguidance along a guided route, and displaying an image on thecommunication terminal 5 according to the latest version of mapinformation included in the server device 3. Note that the request formovement guidance information transmitted at the above-described S7includes a terminal ID that identifies the communication terminal 5which is the source of the request for movement guidance information;and information (e.g., mesh identification numbers) that identifiestarget areas for which movement guidance information is requested (the“update target areas around the current vehicle location” identified atthe above-described S6).

Thereafter, at S8, the CPU 51 receives movement guidance information 26transmitted from the server device 3 according to the request formovement guidance information 26. Note that the movement guidanceinformation 26 includes matching data required to perform vehiclemap-matching; guidance data required for guidance for allowing thevehicle to travel along a guided route, such as left or right turnguidance at guided intersections; and display data for displaying a mapimage and a guidance screen. Namely, the movement guidance information26 received at the above-described S8 is information for identifying acurrent location, providing simple travel guidance along a guided route,and displaying an image in the update target areas around the currentvehicle location.

Note that the process at the above-described S8 is not always performedbefore the processes at and subsequent to the following S9, and isperformed at timing at which movement guidance information 26 istransmitted from the server device 3. Therefore, if the timing at whichmovement guidance information 26 is transmitted from the server device 3is late, then the process at S8 may be performed during or after theprocesses at S9 to S11. Note, however, that in order to prevent theoccurrence of an event that movement guidance based on a guided route isnot provided or erroneous guidance is provided, it is desirable that thereception of movement guidance information (S8) be performed before thereception of searched-route information (S12). Note that the same alsoapplies to S19 and S24 which will be described later.

In addition, at S9, the CPU 51 performs a cache management process whichwill be described later (FIG. 12). In the cache management process, aswill be described later, the movement guidance information 26 obtainedfrom the server device 3 is saved in the cache 47 of the communicationterminal 5, and unnecessary information is deleted from the cache 47.

Then, at S10, the CPU 51 performs a route search process from a point ofdeparture to the destination set at the above-described S4, using theterminal-side map information 48 included in the communication terminal5, and thereby identifies a recommended route from the point ofdeparture to the destination (hereinafter, referred to as terminal'srecommended route). Specifically, a link cost obtained by converting anappropriate level of a link (road) for a route into a number, anintersection cost obtained by converting an appropriate level of anintersection (node) for a route into a number, a charge cost obtained byconverting the level of cost required for travel into a number, etc.,are calculated based on link data, node data, search data, etc., whichare included in the terminal-side map information 48, and a terminal'srecommended route is searched for using the calculated search costs. Forexample, using the publicly known Dijkstra's algorithm, a route with aminimum cost value total is determined to be a terminal's recommendedroute. Note that a route search process using the Dijkstra's algorithmis already publicly known and thus a detail thereof is omitted. Notealso that the point of departure may be the current vehicle location ormay be an arbitrary location (e.g., user's home) specified by the user.

Subsequently, at S11, the CPU 51 transmits a route search request forrequesting to search for a route from the point of departure to thedestination, to the server device 3. Here, the route search requestincludes a terminal ID that identifies the communication terminal 5which is the source of the route search request; information thatidentifies the point of departure (e.g., the current vehicle location)and the destination set at the above-described S4 which are searchconditions for a route search; and route information that identifies theterminal's recommended route which is searched for at theabove-described S10. Note, however, that upon performing rerouting dueto the vehicle deviating from a guided route, since the destination isbasically the same as that set at the last search, information thatidentifies the destination does not need to be transmitted.

In addition, for the route information that identifies the terminal'srecommended route, information that identifies the entire terminal'srecommended route may be transmitted, but only information thatidentifies particularly a road line of the terminal's recommended routethat continues ahead from the point of departure within a predetermineddistance from the point of departure may be transmitted.

Thereafter, at S12, the CPU 51 receives searched-route informationtransmitted from the server device 3 according to the route searchrequest. Here, the searched-route information received at theabove-described S12 is information about a recommended route from thepoint of departure to the destination (hereinafter, referred to asserver's recommended route) that is searched for by the server device 3based on the route search request transmitted at the above-described S11and using the device-side map information 25 which is the latest versionof map information.

Subsequently, at S13, the CPU 51 determines whether to set the server'srecommended route received at the above-described S12 as a guided routefor the communication terminal 5. Note that when a server's recommendedroute is received from the server device 3, the received server'srecommended route is basically set as a guided route for thecommunication terminal 5. Note, however, that when, for example, aserver's recommended route has not been able to be received from theserver device 3 due to a communication error, etc., a route other than aserver's recommended route, such as the terminal's recommended routesearched for by the communication terminal 5 at the above-described S10,is set as a guided route for the communication terminal 5.

Then, if it is determined to set a route other than the server'srecommended route as a guided route for the communication terminal 5(S13: NO), processing transitions to S14.

At S14, the CPU 51 sets, for example, the terminal's recommended routesearched for in the route search process at the above-described S10, asa guided route to provide vehicle travel guidance on the communicationterminal 5. Thereafter, vehicle travel guidance starts based on the setguided route. For example, a map image including a road network aroundthe vehicle location is displayed, or when a guided divergence point atwhich a left or right turn is to be made approaches a predetermineddistance ahead of the vehicle, an enlarged view of the guided divergencepoint is displayed or a vehicle traveling direction at the guideddivergence point is guided. In addition, at the above-described S14, theCPU 51 basically provides the above-described travel guidance, based onthe terminal-side map information 48 and the movement guidanceinformation 26 that are stored in the terminal-side map DB 45. Here,since the terminal's recommended route searched for in the route searchprocess at the above-described S10 is a route searched for based on theterminal-side map information 48 included in the communication terminal5, even if an old version of movement guidance information 26 is usedinstead of a new version of movement guidance information 26 obtainedfrom the server device 3, guidance can be provided with a correctcurrent vehicle location being identified, and thus, it becomes possibleto guide a correct vehicle traveling direction at a guided intersection.Note, however, that for areas having new versions of pieces of movementguidance information 26 obtained from the server device 3, theabove-described travel guidance may be provided using those pieces ofmovement guidance information 26.

On the other hand, if it is determined to set the server's recommendedroute received at the above-described S12, as a guided route for thecommunication terminal 5 (S13: YES), processing transitions to S15.

At S15, the CPU 51 sets the server's recommended route received at theabove-described S12, as a guided route to provide vehicle travelguidance on the communication terminal 5. Thereafter, vehicle travelguidance starts based on the set guided route. For example, a map imageincluding a road network around the vehicle location is displayed, orwhen a guided divergence point at which a left or right turn is to bemade approaches a predetermined distance ahead of the vehicle, anenlarged view of the guided divergence point is displayed or a vehicletraveling direction at the guided divergence point is guided. Inaddition, at the above-described S15, the CPU 51 basically provides theabove-described travel guidance, based on the terminal-side mapinformation 48 and the movement guidance information 26 that are storedin the terminal-side map DB 45. Note, however, that when theterminal-side map information 48 and the movement guidance information26 that are stored in the terminal-side map DB 45 are not the latestversion for areas around the current vehicle location or areas aroundthe guided route, the above-described travel guidance is provided usingalso the movement guidance information 26 that is obtained from theserver device 3 and stored in the cache 47. Note that since the movementguidance information 26 includes matching data required to performvehicle map-matching; guidance data required for guidance for allowingthe vehicle to travel along a guided route, such as left or right turnguidance at guided intersections; and display data for displaying a mapimage and a guidance screen, even if the terminal-side map information48 and the movement guidance information 26 that are stored in theterminal-side map DB 45 are not the latest version, travel guidancealong a guided route that is searched for based on the latest version ofmap information can be appropriately provided.

Subsequently, at S16, the CPU 51 obtains the guided route set on thecommunication terminal 5 at the present time.

Then, at S17, the CPU 51 identifies “update target areas around theguided route,” based on the update area table 49 and the guided routeobtained at the above-described S16. Specifically, the CPU 51 firstidentifies meshes including at least a part of the guided route within apredetermined distance L from the current vehicle location in thedirection of the destination, as meshes around the guided route. Forexample, in an example shown in FIG. 11, the meshes including at least apart of a guided route 61 within a predetermined distance L from acurrent vehicle location in the direction of a destination are meshes H,M, Q, and R. Thereafter, it is determined, by referring to the updatearea table 49, whether the meshes H, M, R, and Q correspond to updatetarget areas, and meshes determined to correspond to update targetareas, i.e., meshes assigned the flag “0” in the update area table 49,are identified as “update target areas around the guided route.” Notethat the “update target areas around the guided route” identified at theabove-described S6 correspond to area sections that require movementguidance information 26 for the future vehicle movement guidance.

Subsequently, at S18, the CPU 51 transmits a request for movementguidance information 26 targeted for the “update target areas around theguided route” identified at the above-described S6, to the server device3. Note, however, that an area for which identical movement guidanceinformation 26 is already stored in the cache 47 of the communicationterminal 5 is excluded from request targets. Note that the request formovement guidance information transmitted at the above-described S18includes a terminal ID that identifies the communication terminal 5which is the source of the request for movement guidance information;and information (e.g., mesh identification numbers) that identifiestarget areas for which movement guidance information is requested (the“update target areas around the guided route” identified at theabove-described S17).

Thereafter, at S19, the CPU 51 receives movement guidance information 26transmitted from the server device 3 according to the request formovement guidance information 26. Note that the movement guidanceinformation 26 includes matching data required to perform vehiclemap-matching; guidance data required for guidance for allowing thevehicle to travel along a guided route, such as left or right turnguidance at guided intersections; and display data for displaying a mapimage and a guidance screen. Namely, the movement guidance information26 received at the above-described S19 is information for identifying acurrent location, providing simple travel guidance along a guided route,and displaying an image in the update target areas around the guidedroute.

In addition, at S20, the CPU 51 performs a cache management processwhich will be described later (FIG. 12). In the cache managementprocess, as will be described later, the movement guidance information26 obtained from the server device 3 is saved in the cache 47 of thecommunication terminal 5, and unnecessary information is deleted fromthe cache 47.

Subsequently, at S21, the CPU 51 determines whether the vehicle hascrossed a section (e.g., a mesh) of map information.

Then, if it is determined that the vehicle has crossed a section of mapinformation (S21: YES), processing transitions to S22. On the otherhand, if it is determined that the vehicle has not crossed a section ofmap information (S21: NO), processing transitions to S26.

At S22, the CPU 51 identifies “update target areas around the currentvehicle location” and “update target areas around the guided route,”based on the update area table 49, the current vehicle location, and theguided route obtained at the above-described S16. Note that theidentification of the “update target areas around the current vehiclelocation” is the same process as that at S6 and the identification ofthe “update target areas around the guided route” is the same process asthat at S17, and thus, a detail thereof is omitted. Note that the“update target areas around the current vehicle location” and the“update target areas around the guided route” which are identified atthe above-described S22 correspond to area sections that requiremovement guidance information 26 for the future vehicle movementguidance.

Subsequently, at S23, the CPU 51 transmits a request for movementguidance information 26 targeted for the “update target areas around thecurrent vehicle location” and the “update target areas around the guidedroute” which are identified at the above-described S22, to the serverdevice 3. Note, however, that an area for which identical movementguidance information 26 is already stored in the cache 47 of thecommunication terminal 5 is excluded from request targets. Note that therequest for movement guidance information transmitted at theabove-described S23 includes a terminal ID that identifies thecommunication terminal 5 which is the source of the request for movementguidance information; and information (e.g., mesh identificationnumbers) that identifies target areas for which movement guidanceinformation is requested (the “update target areas around the currentvehicle location” and the “update target areas around the guided route”which are identified at the above-described S21).

Thereafter, at S24, the CPU 51 receives movement guidance information 26transmitted from the server device 3 according to the request formovement guidance information 26. Note that the movement guidanceinformation 26 includes matching data required to perform vehiclemap-matching; guidance data required for guidance for allowing thevehicle to travel along a guided route, such as left or right turnguidance at guided intersections; and display data for displaying a mapimage and a guidance screen. Namely, the movement guidance information26 received at the above-described S24 is information for identifying acurrent location, providing simple travel guidance along a guided route,and displaying an image in the update target areas around the currentvehicle location and the update target areas around the guided route.

In addition, at S25, the CPU 51 performs a cache management processwhich will be described later (FIG. 12). In the cache managementprocess, as will be described later, the movement guidance information26 obtained from the server device 3 is saved in the cache 47 of thecommunication terminal 5, and unnecessary information is deleted fromthe cache 47. Thereafter, processing transitions to S26.

At S26, the CPU 51 determines whether the vehicle has reached thedestination.

Then, if it is determined that the vehicle has reached the destination(S26: YES), the movement guidance processing program ends. On the otherhand, if it is determined that the vehicle has not reached thedestination (S26: NO), processing returns to S21 and the reception ofmovement guidance information and travel guidance using the receivedmovement guidance information are continuously performed.

Next, the movement guidance processing program executed by the CPU 21 ofthe server device 3 will be described. Note that the processes at thefollowing S31 to S33, S34 to S36, S37 to S39, S40 to S42, and S43 to S45each start at timing at which corresponding information from thecommunication terminal 5 is received, and are performed in parallel toeach other. Therefore, the steps are not always performed in ascendingorder of their step numbers. For example, when a route search request isreceived from the communication terminal 5 before the completion of aprocess at S35 which will be described later, S37 and S38 are performedbefore S36.

First, at S31, the CPU 21 receives a table update request transmittedfrom the communication terminal 5 after the activation of thecommunication terminal 5. Note that the table update request includes aterminal ID that identifies the communication terminal 5 which is thesource of the table update request; and information that identifies theversion of the terminal-side map information 48 at the present time on asection-by-section basis of map information. When the table updaterequest is received from the communication terminal 5, processes at thefollowing S32 and S33 are performed.

At S32, the CPU 21 creates table update information for updating theupdate area table 49 included in the communication terminal 5, based onthe table update request received at the above-described S31.Specifically, the version of the terminal-side map information 48 at thepresent time received at the above-described S31 is compared with theversion of the device-side map information 25 included in the serverdevice 3, to identify a section (e.g., a mesh) whose device-side mapinformation 25 has been updated using map update information which iscreated after the creation time of map update information (updateprogram) having made the last update to the terminal-side mapinformation 48. Then, table update information is created that updatesflags for the identified sections to “0 (update target area)” among theflags included in the update area table 49 (FIG. 8).

Thereafter, at S33, the CPU 21 transmits the table update informationcreated at the above-described S32 to the requested communicationterminal 5. Then, the communication terminal 5 having received the tableupdate information updates the update area table 49 based on thereceived table update information (S3).

In addition, at S34, the CPU 21 receives a request for movement guidanceinformation 26 which is transmitted from the communication terminal 5after updating the update area table 49. Note that the request formovement guidance information 26 includes a terminal ID that identifiesthe communication terminal 5 which is the source of the request formovement guidance information; and information (e.g., mesh numbers) thatidentifies target areas for which movement guidance information isrequested (the update target areas around the current vehicle locationwhich are identified at the above-described S6). When the request formovement guidance information 26 is received from the communicationterminal 5, processes at the following S35 and S36 are performed.

At S34, the CPU 21 receives a request for movement guidance information26 which is transmitted from the communication terminal 5 after updatingthe update area table 49. Note that the request for movement guidanceinformation 26 includes a terminal ID that identifies the communicationterminal 5 which is the source of the request for movement guidanceinformation; and information (e.g., mesh numbers) that identifies targetareas for which movement guidance information is requested (the updatetarget areas around the current vehicle location which are identified atthe above-described S6).

Subsequently, at S35, the CPU 21 extracts movement guidance information26 for the corresponding areas from the device-side map DB 12, based onthe request for movement guidance information 26 received at theabove-described S34.

Thereafter, at S36, the CPU 21 transmits the movement guidanceinformation 26 extracted at the above-described S35 to the requestedcommunication terminal 5.

In addition, at S37, the CPU 21 receives a route search requesttransmitted from the communication terminal 5. Note that the routesearch request includes a terminal ID that identifies the communicationterminal 5 which is the source of the route search request; informationthat identifies a point of departure (e.g., a current vehicle location)and a destination set at the above-described S4 which are searchconditions for a route search; and route information that identifies aterminal's recommended route which is searched for at theabove-described S10. When the route search request is received from thecommunication terminal 5, processes at the following S38 and S39 areperformed.

Then, at S38, the CPU 21 performs a route search process from the pointof departure to the destination using the route search request receivedat the above-described S37 and the device-side map information 25included in the server device 3, and thereby identifies a recommendedroute from the point of departure to the destination (server'srecommended route). Note that the server's recommended route is a routeincluding at least a part of the terminal's recommended route which issearched for by the communication terminal 5. More specifically, a routeto the destination that is connected to a portion of the terminal'srecommended route within a predetermined distance from the point ofdeparture is searched for, and a route obtained by combining the portionof the terminal's recommended route within the predetermined distancefrom the point of departure with the searched route is determined to bea server's recommended route.

Subsequently, at S39, the CPU 21 transmits searched-route informationthat identifies the server's recommended route identified at theabove-described S38, to the communication terminal 5 which is the sourceof the route search request. As a result, the server's recommended routeis set as a guided route on the communication terminal 5. Note that inorder to prevent the occurrence of an event that movement guidance basedon a guided route is not provided or erroneous guidance is provided, itis desirable that the transmission of movement guidance information(S36) be performed before the transmission of searched-route information(S39).

In addition, at S40, the CPU 21 receives a request for movement guidanceinformation 26 which is transmitted from the communication terminal 5after setting the guided route. Note that the request for movementguidance information 26 includes a terminal ID that identifies thecommunication terminal 5 which is the source of the request for movementguidance information; and information (e.g., mesh numbers) thatidentifies target areas for which movement guidance information isrequested (the update target areas around the guided route which areidentified at the above-described S17). When the request for movementguidance information 26 is received from the communication terminal 5after setting the guided route, processes at the following S41 and S42are performed.

Subsequently, at S41, the CPU 21 extracts movement guidance information26 for the corresponding areas from the device-side map DB 12, based onthe request for movement guidance information 26 received at theabove-described S40.

Thereafter, at S42, the CPU 21 transmits the movement guidanceinformation 26 extracted at the above-described S41 to the requestedcommunication terminal 5.

In addition, at S43, the CPU 21 receives a request for movement guidanceinformation 26 which is transmitted from the communication terminal 5after crossing a section of map information. Note that the request formovement guidance information 26 includes a terminal ID that identifiesthe communication terminal 5 which is the source of the request formovement guidance information; and information (e.g., mesh numbers) thatidentifies target areas for which movement guidance information isrequested (the update target areas around the current vehicle locationand around the guided route which are identified at the above-describedS22). When the request for movement guidance information 26 is receivedfrom the communication terminal 5 after crossing a section of mapinformation, processes at the following S44 and S45 are performed.

Subsequently, at S44, the CPU 21 extracts movement guidance information26 for the corresponding areas from the device-side map DB 12, based onthe request for movement guidance information 26 received at theabove-described S43.

Thereafter, at S45, the CPU 21 transmits the movement guidanceinformation 26 extracted at the above-described S44 to the requestedcommunication terminal 5.

Next, a sub-process of the cache management process performed at theabove-described S9, S20, and S25 will be described based on FIG. 12.FIG. 12 is a flowchart for a sub-process program for the cachemanagement process.

First, at S51, the CPU 51 determines whether the amount of free space inthe cache 47 is less than or equal to a threshold value. Note that thethreshold value is the maximum size of movement guidance information 26that is possibly obtained from the server device 3 at a time.

Then, if it is determined that the amount of free space in the cache 47is less than or equal to the threshold value (S51: YES), processingtransitions to S54. On the other hand, if it is determined that theamount of free space in the cache 47 is larger than the threshold value(S51: NO), processing transitions to S52.

At S52, the CPU 51 stores movement guidance information 26 received fromthe server device 3 in the cache 47. Note that the movement guidanceinformation 26 stored in the cache 47 is used later to identify acurrent location, provide simple travel guidance along a guided route,and display an image on the communication terminal 5.

Then, at S53, the CPU 51 sets remaining priorities for the movementguidance information 26 that is newly stored in the cache 47 at theabove-described S52, on a per area section basis. Note that theremaining priorities are information for sorting movement guidanceinformation 26 to be deleted when the cache 47 is lack of its storagearea. Specifically, of the pieces of movement guidance information 26stored in the cache 47, those with a low remaining priority are deletedon a priority basis.

Specifically, at the above-described S53, the CPU 51 identifies areasections that require movement guidance information 26 for the futurevehicle movement guidance, more specifically, each of “area sectionslocated around the current vehicle location” and “area sections locatedaround the guided route set on the communication terminal 5.” Then,movement guidance information 26 for the identified area sections is setwith a higher remaining priority than movement guidance information 26for other area sections. Here, the movement guidance information 26 thatis newly stored in the cache 47 at the above-described S52 is movementguidance information 26 for area sections located around the currentvehicle location or area sections located around the guided route set onthe communication terminal 5. Therefore, at the above-described S53, theremaining priorities are basically set to “A (high).” Note that for areasections that are determined to require movement guidance information 26for the future vehicle movement guidance, a high remaining priority mayalso be likewise set for movement guidance information 26 for areasections other than the area sections located around the current vehiclelocation or the area sections located around the guided route.

On the other hand, at S54, the CPU 51 updates the remaining prioritiesset for the respective pieces of movement guidance information 26 storedin the cache 47, on a per area section basis. Here, as shown in FIG. 5,the movement guidance information 26 stored in the cache 47 is set withremaining priorities on a section-by-section basis (e.g., on amesh-by-mesh basis) of map information. At the above-described S54, theCPU 51 updates the remaining priorities according to the followingconditions (1) and (2):

(1) Movement guidance information 26 for area sections located aroundthe current vehicle location (e.g., 3×3 meshes with the current vehiclelocation being at the center) or area sections located around the guidedroute set on the communication terminal 5 (e.g., meshes including theguided route) is highly likely to be required for the future vehiclemovement guidance and thus the remaining priority is set to “A (high).”On the other hand, movement guidance information 26 for other areasections is less likely to be required in the future and thus theremaining priority is set to “B (low).”

(2) Note, however, that irrespective of the above-described (1), formovement guidance information 26 for area sections whose terminal-sidemap information 48 is the latest version, i.e., area sections for whichthe communication terminal 5 can provide travel guidance based on thelatest version of map information without using movement guidanceinformation 26, the remaining priority is set to “B (low).”

Thereafter, at S55, the CPU 51 deletes movement guidance information 26with a low remaining priority among the movement guidance information 26stored in the cache 47, on a priority basis. Specifically, movementguidance information 26 whose remaining priority is set to “B (low)” isdeleted from the cache on a per area section (mesh) basis.

Thereafter, at S56, the CPU 51 determines again whether the amount offree space in the cache 47 is less than or equal to the threshold value.

Then, if it is determined that the amount of free space in the cache 47is less than or equal to the threshold value (S56: YES), processingtransitions to S57. On the other hand, if the amount of free space inthe cache 47 is larger than the threshold value (S56: NO), processingtransitions to S52.

At S57, the CPU 51 temporarily increases storage space allocated to thecache 47 in the hard disk or memory. Note that the space is increased tosuch an amount that the amount of free space after the increase in thecache 47 is larger than the threshold value which serves as a criterionof determination at the above-described S51. In addition, theconfiguration may be such that the increased space in the cache is putback later at timing at which the free space in the cache 47 hasincreased, or is not put back. Thereafter, processing transitions toS52.

As described in detail above, in the communication terminal 5 and thecomputer program executed by the communication terminal 5 according tothe present embodiment, movement guidance for a mobile unit is providedusing movement guidance information 26 for providing movement guidancefor the mobile unit which is delivered from the server device 3 (S15);the movement guidance information 26 delivered from the server device 3is stored in the cache 47 (S52); the movement guidance information 26stored in the cache 47 is sectioned on a per area section basis of mapinformation and set with remaining priorities (S53 and S54); and of themovement guidance information 26 stored in the cache 47, movementguidance information 26 for areas set with a low remaining priority isdeleted from the cache 47 on a priority basis rather than movementguidance information 26 for areas set with a high remaining priority(S55). Thus, it becomes possible to allow movement guidance information26 required in the future for movement guidance to remain in the cache47 on a priority basis. As a result, the chance of obtaining the samemovement guidance information 26 having been obtained in the past againfrom the server device 3 is reduced, enabling to reduce communicationload and processing load.

In addition, in the present embodiment, vehicle movement guidance isprovided by obtaining in advance movement guidance information 26 forproviding vehicle movement guidance from the server device 3, instead ofmap information (including facility data, data used for a route search,etc., in addition to movement guidance information 26 for providingvehicle movement guidance) (S15). Here, since the movement guidanceinformation 26 has a smaller amount of data than the map information,the amount of information delivered can be reduced compared to the caseof obtaining a new version of map information to provide vehiclemovement guidance (or the case of obtaining update information forupdating map information to a new version).

Note that the above-described embodiment is not necessarily limiting andit is, of course, possible to make various modifications and alterationsthereto without departing from the spirit and scope of the inventiveprinciples.

For example, although in the present embodiment the configuration issuch that the communication terminal 5 performs processes foridentifying update target areas around a current vehicle location andaround a guided route at the above-described S6, S17, and S22, theconfiguration may be such that the server device 3 performs theprocesses. In that case, the server device 3 needs to have or obtainfrom the communication terminal 5 an update area table 49, a currentvehicle location, and a guided route set on the communication terminal5.

In addition, although in the present embodiment the configuration issuch that the communication terminal 5 requests the server device 3 formovement guidance information 26 targeted for update target areas arounda current vehicle location and update target areas around a guidedroute, the communication terminal 5 may also request the server device 3for movement guidance information 26 targeted for update target areas inan area where a map image is displayed on the liquid crystal display 35.As a result, for example, when a map image displayed on the liquidcrystal display 35 is scroll displayed, it becomes possible to display amap image based on the latest version of map information.

In addition, although in the present embodiment the configuration issuch that remaining priorities set for movement guidance information 26are updated immediately before deleting movement guidance informationfrom the cache 47 (S54), the remaining priorities may be updated attiming, e.g., at predetermined time intervals, upon the activation ofthe communication terminal 5, or at a time point when the vehicle hascrossed a mesh.

In addition, although in the present embodiment, when the communicationterminal 5 requests the server device 3 for movement guidanceinformation 26, identical movement guidance information 26 that isalready stored in the cache 47 of the communication terminal 5 isexcluded from request targets, the movement guidance information 26 maybe included in request targets.

In addition, although in the present embodiment, when the communicationterminal 5 requests the server device 3 for movement guidanceinformation for update target areas around a guided route, meshesincluding at least a part of a guided route within a predetermineddistance L from a current vehicle location in the direction of adestination serve as targets, irrespective of the distance from thecurrent vehicle location, meshes including at least a part of the guidedroute may serve as targets.

In addition, although in the present embodiment the update area table 49is a table in which a mesh corresponding to an update target area and amesh not corresponding to an update target area are identified on amesh-by-mesh basis of map information (FIG. 4), the identification maybe performed, for example, on a per administrative district basis suchas a city, a ward, a town, or a village, instead of on a mesh-by-meshbasis.

In addition, although in the present embodiment the movement guidanceinformation 26 is information divided on a mesh-by-mesh basis of mapinformation (FIG. 5), the movement guidance information 26 may beinformation divided, for example, on a per administrative district basissuch as a city, a ward, a town, or a village, instead of on amesh-by-mesh basis. In addition, when remaining priorities are set forthe movement guidance information 26, too, the setting may be likewiseperformed on a per administrative district basis instead of on amesh-by-mesh basis.

In addition, although in the present embodiment the communicationterminal 5 requests the server device 3 for movement guidanceinformation 26 for areas around a current location (S7) at timing thatis after setting a destination (S4) and before transmitting a routesearch request to the server device 3 (S11), the request for movementguidance information may be made at any other timing as long as it isafter activating the communication terminal 5 and before setting aguided route.

In addition, although an implementation example is described above inwhich a movement guidance device and a computer program are embodied,the movement guidance device can also have the following configurationsand in that case the following advantageous effects are provided.

For example, a first configuration is as follows:

A movement guidance device (5) connected to a server device (3) in atwo-way communicable manner includes: guiding means (33) for providingmovement guidance for a mobile unit using guidance information (26) forproviding movement guidance for the mobile unit, the guidanceinformation being delivered from the server device; information storingmeans (33) for storing the guidance information delivered from theserver device in a storage medium (47), the guidance information beingarea-section-by-area-section guidance information; priority settingmeans (33) for setting a remaining priority for the guidance informationstored in the storage medium, on a per area section basis of mapinformation; and information deleting means (33) for deleting, from thestorage medium, guidance information for an area section with a lowremaining priority on a priority basis rather than guidance informationfor an area section with a high remaining priority among the guidanceinformation stored in the storage medium.

According to the movement guidance device having the above-describedconfiguration, when guidance information required to provide movementguidance for a mobile unit is obtained from the server device and storedin the storage medium, remaining priorities are set for the guidanceinformation stored in the storage medium, on a per area section basis.By this, it becomes possible to allow guidance information required inthe future for movement guidance to remain on a priority basis. As aresult, the chance of obtaining the same guidance information havingbeen obtained in the past again from the server device is reduced,enabling to reduce communication load and processing load.

In addition, a second configuration is as follows:

The guidance information (26) is delivered from the server device, theguidance information being targeted for an area whose terminal-side mapinformation (48) included in the movement guidance device is an olderversion of map information relative to device-side map information (25)included in the server device (3).

According to the movement guidance device having the above-describedconfiguration, even if map information included in the movement guidancedevice is an older version of map information compared to mapinformation included in the server device, movement guidance for themobile unit can be appropriately provided by using guidance information.

In addition, a third configuration is as follows:

The movement guidance device includes area identifying means (33) foridentifying an area section that requires guidance information (26) forfuture movement guidance for the mobile unit, and the guidanceinformation is delivered from the server device, the guidanceinformation being targeted for the area section identified by the areaidentifying means.

According to the movement guidance device having the above-describedconfiguration, guidance information for area sections that is requiredwhen guidance for the mobile unit is provided in the future can beobtained in advance, and by using the guidance information later,movement guidance for the mobile unit can be appropriately provided.

In addition, a fourth configuration is as follows:

The priority setting means (33) sets a higher remaining priority for theguidance information for the area section identified by the areaidentifying means (33) than a remaining priority of guidance informationfor other area sections.

According to the movement guidance device having the above-describedconfiguration, of the guidance information stored in the storage medium,guidance information for area sections that is required when guidancefor the mobile unit is provided in the future is allowed to remain on apriority basis.

In addition, a fifth configuration is as follows:

The movement guidance device includes current location obtaining means(33) for obtaining a current location of the mobile unit, and the areaidentifying means (33) identifies an area section located around thecurrent location of the mobile unit, as an area section that requiresguidance information (26) for future movement guidance for the mobileunit.

According to the movement guidance device having the above-describedconfiguration, of the guidance information stored in the storage medium,guidance information for areas in which the mobile unit is likely tomove in the future, i.e., guidance information required in the futurefor movement guidance, is allowed to remain on a priority basis.

In addition, a sixth configuration is as follows:

The movement guidance device includes guided-route setting means (33)for setting a guided route (61), and the area identifying means (33)identifies an area section located around the guided route, as an areasection that requires guidance information (26) for future movementguidance for the mobile unit.

According to the movement guidance device having the above-describedconfiguration, of the guidance information stored in the storage medium,guidance information for areas in which the mobile unit is likely tomove in the future, i.e., guidance information required in the futurefor movement guidance, is allowed to remain on a priority basis.

In addition, a seventh configuration is as follows:

The movement guidance device includes map information updating means(33) for updating terminal-side map information (48) included in themovement guidance device, on a per area section basis, and the prioritysetting means (33) sets a lower remaining priority for guidanceinformation (26) for an area whose terminal-side map information hasbeen updated by the map information updating means than a remainingpriority of guidance information for other areas.

According to the movement guidance device having the above-describedconfiguration, a low remaining priority is set for guidance informationfor areas for which movement guidance based on the latest version of mapinformation can be provided without using guidance information, by whichthe guidance information is allowed to be deleted on a priority basis.

In addition, an eighth configuration is as follows:

When an amount of free space in the storage medium (47) is less than orequal to a threshold value, the information deleting means (33) deletesthe guidance information (26) on a per area section basis.

According to the movement guidance device having the above-describedconfiguration, by deleting unnecessary guidance information stored inthe storage medium and increasing the amount of free space in thestorage medium, new guidance information obtained from the server device3 can be stored in the storage medium.

The invention claimed is:
 1. A movement guidance device connected to aserver device in a two-way communicable manner, the movement guidancedevice comprising: a memory; and a processor programmed to: providemovement guidance for a mobile unit using guidance information forproviding the movement guidance for the mobile unit, the guidanceinformation being delivered from the server device; store the guidanceinformation delivered from the server device in the memory, the guidanceinformation being area-section-by-area-section guidance information;update terminal-side map information included in the movement guidancedevice on a per area section basis; set a remaining priority for thestored guidance information on a per area section basis of mapinformation by setting a low remaining priority of the guidanceinformation for an area whose terminal-side map information has beenupdated compared to a remaining priority of the guidance information setfor other areas; and delete, from the memory, the guidance informationfor an area section with the low remaining priority on a priority basisrather than the guidance information for an area section with a highremaining priority among the stored guidance information.
 2. Themovement guidance device according to claim 1, wherein the guidanceinformation is delivered from the server device, the guidanceinformation being targeted for an area whose terminal-side mapinformation included in the movement guidance device is an older versionof map information relative to device-side map information included inthe server device.
 3. The movement guidance device according to claim 1,wherein: the processor is programmed to identify an area section thatrequires the guidance information for future movement guidance for themobile unit; and the guidance information is delivered from the serverdevice, the guidance information being targeted for the identified areasection.
 4. The movement guidance device according to claim 3, whereinthe processor is programmed to set a higher remaining priority for theguidance information for the identified area section than a remainingpriority of the guidance information for other area sections.
 5. Themovement guidance device according to claim 4, wherein the processor isprogrammed to: obtain a current location of the mobile unit; andidentify an area section located around the current location of themobile unit as an area section that requires the guidance informationfor the future movement guidance for the mobile unit.
 6. The movementguidance device according to claim 4, wherein the processor isprogrammed to: set a guided route; and identify an area section locatedaround the guided route as an area section that requires the guidanceinformation for the future movement guidance for the mobile unit.
 7. Themovement guidance device according to claim 1, wherein the processor isprogrammed to delete the guidance information on a per area sectionbasis when an amount of free space in the memory is less than or equalto a threshold value.
 8. A computer-readable storage medium storing acomputer-executable program for causing a movement guidance deviceconnected to a server device in a two-way communicable manner to performfunctions comprising: providing movement guidance for a mobile unitusing guidance information for providing the movement guidance for themobile unit, the guidance information being delivered from the serverdevice; storing the guidance information delivered from the serverdevice in a memory, the guidance information beingarea-section-by-area-section guidance information; updatingterminal-side map information included in the movement guidance deviceon a per area section basis; setting a remaining priority for the storedguidance information on a per area section basis of map information bysetting a low remaining priority for the guidance information for anarea whose terminal-side map information has been updated compared to aremaining priority of the guidance information set for other areas; anddeleting, from the memory, the guidance information for an area sectionwith a low remaining priority on a priority basis rather than theguidance information for an area section with a high remaining priorityamong the stored guidance information.